<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IgH EtherCAT Master: master.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">IgH EtherCAT Master
   &#160;<span id="projectnumber">1.5.2</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',false,false,'search.php','Search');
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('master_8h.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a>  </div>
  <div class="headertitle">
<div class="title">master.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>EtherCAT master structure.  
<a href="#details">More...</a></p>

<p><a href="master_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structec__stats__t.html">ec_stats_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cyclic statistics.  <a href="structec__stats__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structec__device__stats__t.html">ec_device_stats_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Device statistics.  <a href="structec__device__stats__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structec__master.html">ec_master</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">EtherCAT master.  <a href="structec__master.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a306a2bcfad973302ae507c9c6978b816"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a306a2bcfad973302ae507c9c6978b816">EC_MASTER_INFO</a>(master,  fmt,  args...)&#160;&#160;&#160;printk(KERN_INFO &quot;EtherCAT %u: &quot; fmt, master-&gt;index, ##args)</td></tr>
<tr class="memdesc:a306a2bcfad973302ae507c9c6978b816"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convenience macro for printing master-specific information to syslog.  <a href="#a306a2bcfad973302ae507c9c6978b816">More...</a><br /></td></tr>
<tr class="separator:a306a2bcfad973302ae507c9c6978b816"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aece1fb7ea6af168ba7513c9d7b0a523a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#aece1fb7ea6af168ba7513c9d7b0a523a">EC_MASTER_ERR</a>(master,  fmt,  args...)&#160;&#160;&#160;printk(KERN_ERR &quot;EtherCAT ERROR %u: &quot; fmt, master-&gt;index, ##args)</td></tr>
<tr class="memdesc:aece1fb7ea6af168ba7513c9d7b0a523a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convenience macro for printing master-specific errors to syslog.  <a href="#aece1fb7ea6af168ba7513c9d7b0a523a">More...</a><br /></td></tr>
<tr class="separator:aece1fb7ea6af168ba7513c9d7b0a523a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af75617c47fe87f4f60e8593d7e79dbc0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#af75617c47fe87f4f60e8593d7e79dbc0">EC_MASTER_WARN</a>(master,  fmt,  args...)&#160;&#160;&#160;printk(KERN_WARNING &quot;EtherCAT WARNING %u: &quot; fmt, master-&gt;index, ##args)</td></tr>
<tr class="memdesc:af75617c47fe87f4f60e8593d7e79dbc0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convenience macro for printing master-specific warnings to syslog.  <a href="#af75617c47fe87f4f60e8593d7e79dbc0">More...</a><br /></td></tr>
<tr class="separator:af75617c47fe87f4f60e8593d7e79dbc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6cc0dea5aa374291f2379e844de741d0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a6cc0dea5aa374291f2379e844de741d0">EC_MASTER_DBG</a>(master,  level,  fmt,  args...)</td></tr>
<tr class="memdesc:a6cc0dea5aa374291f2379e844de741d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convenience macro for printing master-specific debug messages to syslog.  <a href="#a6cc0dea5aa374291f2379e844de741d0">More...</a><br /></td></tr>
<tr class="separator:a6cc0dea5aa374291f2379e844de741d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a82682f338d4c64728c4bc14543eb6b9e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a82682f338d4c64728c4bc14543eb6b9e">EC_EXT_RING_SIZE</a>&#160;&#160;&#160;32</td></tr>
<tr class="memdesc:a82682f338d4c64728c4bc14543eb6b9e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Size of the external datagram ring.  <a href="#a82682f338d4c64728c4bc14543eb6b9e">More...</a><br /></td></tr>
<tr class="separator:a82682f338d4c64728c4bc14543eb6b9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a27e6deff35543c304e8a191c64f35cf3"><td class="memItemLeft" align="right" valign="top"><a id="a27e6deff35543c304e8a191c64f35cf3"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a27e6deff35543c304e8a191c64f35cf3">ec_master_num_devices</a>(MASTER)&#160;&#160;&#160;1</td></tr>
<tr class="memdesc:a27e6deff35543c304e8a191c64f35cf3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of Ethernet devices. <br /></td></tr>
<tr class="separator:a27e6deff35543c304e8a191c64f35cf3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:aebcf0998049ecde580a47832fb3b36f0"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#aebcf0998049ecde580a47832fb3b36f0">ec_master_phase_t</a> { <a class="el" href="master_8h.html#aebcf0998049ecde580a47832fb3b36f0aa9cb1938a13b1bfc35b02646310efe8f">EC_ORPHANED</a>, 
<a class="el" href="master_8h.html#aebcf0998049ecde580a47832fb3b36f0a243c4f44013cdfedb1105cb13e6b1191">EC_IDLE</a>, 
<a class="el" href="master_8h.html#aebcf0998049ecde580a47832fb3b36f0aadf62d83c5d61ea4fda76f5676aeb0c4">EC_OPERATION</a>
 }<tr class="memdesc:aebcf0998049ecde580a47832fb3b36f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">EtherCAT master phase.  <a href="master_8h.html#aebcf0998049ecde580a47832fb3b36f0">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:aebcf0998049ecde580a47832fb3b36f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a1042d68ede5c0f866dc185b89167b31f"><td class="memItemLeft" align="right" valign="top"><a id="a1042d68ede5c0f866dc185b89167b31f"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a1042d68ede5c0f866dc185b89167b31f">ec_master_init_static</a> (void)</td></tr>
<tr class="memdesc:a1042d68ede5c0f866dc185b89167b31f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Static variables initializer. <br /></td></tr>
<tr class="separator:a1042d68ede5c0f866dc185b89167b31f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ac0da6ba7a9d07560cf444aa3591b9a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a7ac0da6ba7a9d07560cf444aa3591b9a">ec_master_init</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *, unsigned int, const uint8_t *, const uint8_t *, dev_t, struct <a class="el" href="module_8c.html#a9b6474dd18270738a5c4853fd93b5e70">class</a> *, unsigned int)</td></tr>
<tr class="memdesc:a7ac0da6ba7a9d07560cf444aa3591b9a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Master constructor.  <a href="#a7ac0da6ba7a9d07560cf444aa3591b9a">More...</a><br /></td></tr>
<tr class="separator:a7ac0da6ba7a9d07560cf444aa3591b9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ea8e56915a4c0507a1bf69ed7ecee13"><td class="memItemLeft" align="right" valign="top"><a id="a5ea8e56915a4c0507a1bf69ed7ecee13"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a5ea8e56915a4c0507a1bf69ed7ecee13">ec_master_clear</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *)</td></tr>
<tr class="memdesc:a5ea8e56915a4c0507a1bf69ed7ecee13"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <br /></td></tr>
<tr class="separator:a5ea8e56915a4c0507a1bf69ed7ecee13"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a510fd2e57ffec9153acd1fa5e07429d9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a510fd2e57ffec9153acd1fa5e07429d9">ec_master_enter_idle_phase</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *)</td></tr>
<tr class="memdesc:a510fd2e57ffec9153acd1fa5e07429d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transition function from ORPHANED to IDLE phase.  <a href="#a510fd2e57ffec9153acd1fa5e07429d9">More...</a><br /></td></tr>
<tr class="separator:a510fd2e57ffec9153acd1fa5e07429d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a172a333dbe2567d1a3adeb69f1fd672a"><td class="memItemLeft" align="right" valign="top"><a id="a172a333dbe2567d1a3adeb69f1fd672a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a172a333dbe2567d1a3adeb69f1fd672a">ec_master_leave_idle_phase</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *)</td></tr>
<tr class="memdesc:a172a333dbe2567d1a3adeb69f1fd672a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transition function from IDLE to ORPHANED phase. <br /></td></tr>
<tr class="separator:a172a333dbe2567d1a3adeb69f1fd672a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0265b8dfaa214b79b789eaf2808b836e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a0265b8dfaa214b79b789eaf2808b836e">ec_master_enter_operation_phase</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *)</td></tr>
<tr class="memdesc:a0265b8dfaa214b79b789eaf2808b836e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transition function from IDLE to OPERATION phase.  <a href="#a0265b8dfaa214b79b789eaf2808b836e">More...</a><br /></td></tr>
<tr class="separator:a0265b8dfaa214b79b789eaf2808b836e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a85447c25b0d0629447d224aa7ed08d"><td class="memItemLeft" align="right" valign="top"><a id="a0a85447c25b0d0629447d224aa7ed08d"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a0a85447c25b0d0629447d224aa7ed08d">ec_master_leave_operation_phase</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *)</td></tr>
<tr class="memdesc:a0a85447c25b0d0629447d224aa7ed08d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transition function from OPERATION to IDLE phase. <br /></td></tr>
<tr class="separator:a0a85447c25b0d0629447d224aa7ed08d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb3fd5f8f48d5b0688bf5374d1db8a2a"><td class="memItemLeft" align="right" valign="top"><a id="aeb3fd5f8f48d5b0688bf5374d1db8a2a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#aeb3fd5f8f48d5b0688bf5374d1db8a2a">ec_master_eoe_start</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *)</td></tr>
<tr class="memdesc:aeb3fd5f8f48d5b0688bf5374d1db8a2a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Starts Ethernet over EtherCAT processing on demand. <br /></td></tr>
<tr class="separator:aeb3fd5f8f48d5b0688bf5374d1db8a2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae91a3cc9f33b29f2e0f479f602e979b7"><td class="memItemLeft" align="right" valign="top"><a id="ae91a3cc9f33b29f2e0f479f602e979b7"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#ae91a3cc9f33b29f2e0f479f602e979b7">ec_master_eoe_stop</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *)</td></tr>
<tr class="memdesc:ae91a3cc9f33b29f2e0f479f602e979b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stops the Ethernet over EtherCAT processing. <br /></td></tr>
<tr class="separator:ae91a3cc9f33b29f2e0f479f602e979b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f9f566f43be617c60cc7be343582402"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a0f9f566f43be617c60cc7be343582402">ec_master_receive_datagrams</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *, const uint8_t *, size_t)</td></tr>
<tr class="memdesc:a0f9f566f43be617c60cc7be343582402"><td class="mdescLeft">&#160;</td><td class="mdescRight">Processes a received frame.  <a href="#a0f9f566f43be617c60cc7be343582402">More...</a><br /></td></tr>
<tr class="separator:a0f9f566f43be617c60cc7be343582402"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d0214fc51a4b399f22b6317f2c239dd"><td class="memItemLeft" align="right" valign="top"><a id="a6d0214fc51a4b399f22b6317f2c239dd"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a6d0214fc51a4b399f22b6317f2c239dd">ec_master_queue_datagram</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *, <a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *)</td></tr>
<tr class="memdesc:a6d0214fc51a4b399f22b6317f2c239dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Places a datagram in the datagram queue. <br /></td></tr>
<tr class="separator:a6d0214fc51a4b399f22b6317f2c239dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca56ba0e591545222908f5c2b148fd5f"><td class="memItemLeft" align="right" valign="top"><a id="aca56ba0e591545222908f5c2b148fd5f"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#aca56ba0e591545222908f5c2b148fd5f">ec_master_queue_datagram_ext</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *, <a class="el" href="structec__datagram__t.html">ec_datagram_t</a> *)</td></tr>
<tr class="memdesc:aca56ba0e591545222908f5c2b148fd5f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Places a datagram in the non-application datagram queue. <br /></td></tr>
<tr class="separator:aca56ba0e591545222908f5c2b148fd5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a005dd21f87606cec96e3803c2848d6e1"><td class="memItemLeft" align="right" valign="top"><a id="a005dd21f87606cec96e3803c2848d6e1"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a005dd21f87606cec96e3803c2848d6e1">ec_master_set_send_interval</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *, unsigned int)</td></tr>
<tr class="memdesc:a005dd21f87606cec96e3803c2848d6e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the expected interval between calls to ecrt_master_send and calculates the maximum amount of data to queue. <br /></td></tr>
<tr class="separator:a005dd21f87606cec96e3803c2848d6e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad6aca8fc11ed9b16a69449c47d432dba"><td class="memItemLeft" align="right" valign="top"><a id="ad6aca8fc11ed9b16a69449c47d432dba"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#ad6aca8fc11ed9b16a69449c47d432dba">ec_master_attach_slave_configs</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *)</td></tr>
<tr class="memdesc:ad6aca8fc11ed9b16a69449c47d432dba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Attaches the slave configurations to the slaves. <br /></td></tr>
<tr class="separator:ad6aca8fc11ed9b16a69449c47d432dba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa2ad73c977ff2605e060085649d97d1a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#aa2ad73c977ff2605e060085649d97d1a">ec_master_find_slave</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *, uint16_t, uint16_t)</td></tr>
<tr class="memdesc:aa2ad73c977ff2605e060085649d97d1a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds a slave in the bus, given the alias and position.  <a href="#aa2ad73c977ff2605e060085649d97d1a">More...</a><br /></td></tr>
<tr class="separator:aa2ad73c977ff2605e060085649d97d1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7fd24724221dacd3f2a9059b8992cb0b"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a7fd24724221dacd3f2a9059b8992cb0b">ec_master_find_slave_const</a> (const <a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *, uint16_t, uint16_t)</td></tr>
<tr class="memdesc:a7fd24724221dacd3f2a9059b8992cb0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds a slave in the bus, given the alias and position.  <a href="#a7fd24724221dacd3f2a9059b8992cb0b">More...</a><br /></td></tr>
<tr class="separator:a7fd24724221dacd3f2a9059b8992cb0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab19fbec7369ba9928d822a025b1b62ef"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#ab19fbec7369ba9928d822a025b1b62ef">ec_master_output_stats</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *)</td></tr>
<tr class="memdesc:ab19fbec7369ba9928d822a025b1b62ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Output master statistics.  <a href="#ab19fbec7369ba9928d822a025b1b62ef">More...</a><br /></td></tr>
<tr class="separator:ab19fbec7369ba9928d822a025b1b62ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35f916015e57779aa89b73928568ec7c"><td class="memItemLeft" align="right" valign="top"><a id="a35f916015e57779aa89b73928568ec7c"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a35f916015e57779aa89b73928568ec7c">ec_master_clear_eoe_handlers</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *)</td></tr>
<tr class="memdesc:a35f916015e57779aa89b73928568ec7c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear and free all EoE handlers. <br /></td></tr>
<tr class="separator:a35f916015e57779aa89b73928568ec7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96163ebaa24e3ef19e4879656eac0c6f"><td class="memItemLeft" align="right" valign="top"><a id="a96163ebaa24e3ef19e4879656eac0c6f"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a96163ebaa24e3ef19e4879656eac0c6f">ec_master_clear_slaves</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *)</td></tr>
<tr class="memdesc:a96163ebaa24e3ef19e4879656eac0c6f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear all slaves. <br /></td></tr>
<tr class="separator:a96163ebaa24e3ef19e4879656eac0c6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2471b97da009904ca66188f0360d17e3"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a2471b97da009904ca66188f0360d17e3">ec_master_config_count</a> (const <a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *)</td></tr>
<tr class="memdesc:a2471b97da009904ca66188f0360d17e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the number of slave configurations provided by the application.  <a href="#a2471b97da009904ca66188f0360d17e3">More...</a><br /></td></tr>
<tr class="separator:a2471b97da009904ca66188f0360d17e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f71af78e1b705fb6fadf9c5f1d574fb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ApplicationInterface.html#ga81f6717d9d4157df53b863e5ee3b04a4">ec_slave_config_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a7f71af78e1b705fb6fadf9c5f1d574fb">ec_master_get_config</a> (const <a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *, unsigned int)</td></tr>
<tr class="memdesc:a7f71af78e1b705fb6fadf9c5f1d574fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a slave configuration via its position in the list.  <a href="#a7f71af78e1b705fb6fadf9c5f1d574fb">More...</a><br /></td></tr>
<tr class="separator:a7f71af78e1b705fb6fadf9c5f1d574fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a260fc8f122ebaf627fd575e668efdfe5"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="group__ApplicationInterface.html#ga81f6717d9d4157df53b863e5ee3b04a4">ec_slave_config_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a260fc8f122ebaf627fd575e668efdfe5">ec_master_get_config_const</a> (const <a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *, unsigned int)</td></tr>
<tr class="memdesc:a260fc8f122ebaf627fd575e668efdfe5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a slave configuration via its position in the list.  <a href="#a260fc8f122ebaf627fd575e668efdfe5">More...</a><br /></td></tr>
<tr class="separator:a260fc8f122ebaf627fd575e668efdfe5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ece9b88cc82a2b94ee1160561b0d6cf"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a0ece9b88cc82a2b94ee1160561b0d6cf">ec_master_domain_count</a> (const <a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *)</td></tr>
<tr class="memdesc:a0ece9b88cc82a2b94ee1160561b0d6cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the number of domains.  <a href="#a0ece9b88cc82a2b94ee1160561b0d6cf">More...</a><br /></td></tr>
<tr class="separator:a0ece9b88cc82a2b94ee1160561b0d6cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c5d1278cdd711758cc70d006d4f6796"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ApplicationInterface.html#ga80023c0c77cb39ae1cd70c9d8e5269fc">ec_domain_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a8c5d1278cdd711758cc70d006d4f6796">ec_master_find_domain</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *, unsigned int)</td></tr>
<tr class="memdesc:a8c5d1278cdd711758cc70d006d4f6796"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a domain via its position in the list.  <a href="#a8c5d1278cdd711758cc70d006d4f6796">More...</a><br /></td></tr>
<tr class="separator:a8c5d1278cdd711758cc70d006d4f6796"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3cf92c146791d65e9f50bab3fd52df9"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="group__ApplicationInterface.html#ga80023c0c77cb39ae1cd70c9d8e5269fc">ec_domain_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#af3cf92c146791d65e9f50bab3fd52df9">ec_master_find_domain_const</a> (const <a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *, unsigned int)</td></tr>
<tr class="memdesc:af3cf92c146791d65e9f50bab3fd52df9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a domain via its position in the list.  <a href="#af3cf92c146791d65e9f50bab3fd52df9">More...</a><br /></td></tr>
<tr class="separator:af3cf92c146791d65e9f50bab3fd52df9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46e4e479e848ee7d2b241b6bf59e53f7"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a46e4e479e848ee7d2b241b6bf59e53f7">ec_master_eoe_handler_count</a> (const <a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *)</td></tr>
<tr class="memdesc:a46e4e479e848ee7d2b241b6bf59e53f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the number of EoE handlers.  <a href="#a46e4e479e848ee7d2b241b6bf59e53f7">More...</a><br /></td></tr>
<tr class="separator:a46e4e479e848ee7d2b241b6bf59e53f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae20b715da9a11ca5743fd794a9cb1714"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="ethernet_8h.html#a03b01351f25a9210938e676941427cf4">ec_eoe_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#ae20b715da9a11ca5743fd794a9cb1714">ec_master_get_eoe_handler_const</a> (const <a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *, uint16_t)</td></tr>
<tr class="memdesc:ae20b715da9a11ca5743fd794a9cb1714"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get an EoE handler via its position in the list.  <a href="#ae20b715da9a11ca5743fd794a9cb1714">More...</a><br /></td></tr>
<tr class="separator:ae20b715da9a11ca5743fd794a9cb1714"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a329e1df698c675e5764eb52321cfb337"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a329e1df698c675e5764eb52321cfb337">ec_master_debug_level</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *, unsigned int)</td></tr>
<tr class="memdesc:a329e1df698c675e5764eb52321cfb337"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the debug level.  <a href="#a329e1df698c675e5764eb52321cfb337">More...</a><br /></td></tr>
<tr class="separator:a329e1df698c675e5764eb52321cfb337"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5944c23eda9f9fb63e3eb9772e6e1ba"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__ApplicationInterface.html#ga80023c0c77cb39ae1cd70c9d8e5269fc">ec_domain_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#af5944c23eda9f9fb63e3eb9772e6e1ba">ecrt_master_create_domain_err</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *)</td></tr>
<tr class="memdesc:af5944c23eda9f9fb63e3eb9772e6e1ba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Same as <a class="el" href="group__ApplicationInterface.html#gae4ede07f05b211667078ab2b2396da6e" title="Creates a new process data domain. ">ecrt_master_create_domain()</a>, but with ERR_PTR() return value.  <a href="#af5944c23eda9f9fb63e3eb9772e6e1ba">More...</a><br /></td></tr>
<tr class="separator:af5944c23eda9f9fb63e3eb9772e6e1ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c0b63cd61c5a8189f4fbf1469a42fc5"><td class="memItemLeft" align="right" valign="top"><a id="a7c0b63cd61c5a8189f4fbf1469a42fc5"></a>
<a class="el" href="group__ApplicationInterface.html#ga81f6717d9d4157df53b863e5ee3b04a4">ec_slave_config_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a7c0b63cd61c5a8189f4fbf1469a42fc5">ecrt_master_slave_config_err</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *, uint16_t, uint16_t, uint32_t, uint32_t)</td></tr>
<tr class="memdesc:a7c0b63cd61c5a8189f4fbf1469a42fc5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Same as <a class="el" href="group__ApplicationInterface.html#gaa190a5d3aa2a72b8950ef93aa7baab0b" title="Obtains a slave configuration. ">ecrt_master_slave_config()</a>, but with ERR_PTR() return value. <br /></td></tr>
<tr class="separator:a7c0b63cd61c5a8189f4fbf1469a42fc5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae45d9efc15219b27e5559e541bf0e3a3"><td class="memItemLeft" align="right" valign="top"><a id="ae45d9efc15219b27e5559e541bf0e3a3"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#ae45d9efc15219b27e5559e541bf0e3a3">ec_master_calc_dc</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *)</td></tr>
<tr class="memdesc:ae45d9efc15219b27e5559e541bf0e3a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Distributed-clocks calculations. <br /></td></tr>
<tr class="separator:ae45d9efc15219b27e5559e541bf0e3a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac51be86291ae6211a441dbcdce28a308"><td class="memItemLeft" align="right" valign="top"><a id="ac51be86291ae6211a441dbcdce28a308"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#ac51be86291ae6211a441dbcdce28a308">ec_master_request_op</a> (<a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *)</td></tr>
<tr class="memdesc:ac51be86291ae6211a441dbcdce28a308"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request OP state for configured slaves. <br /></td></tr>
<tr class="separator:ac51be86291ae6211a441dbcdce28a308"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea63a38b5a1b38f44f82c8548b1eb317"><td class="memItemLeft" align="right" valign="top"><a id="aea63a38b5a1b38f44f82c8548b1eb317"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#aea63a38b5a1b38f44f82c8548b1eb317">ec_master_internal_send_cb</a> (void *)</td></tr>
<tr class="memdesc:aea63a38b5a1b38f44f82c8548b1eb317"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal sending callback. <br /></td></tr>
<tr class="separator:aea63a38b5a1b38f44f82c8548b1eb317"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9fd1de8d2addfe0a8ee3e42b3c33c13"><td class="memItemLeft" align="right" valign="top"><a id="ae9fd1de8d2addfe0a8ee3e42b3c33c13"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#ae9fd1de8d2addfe0a8ee3e42b3c33c13">ec_master_internal_receive_cb</a> (void *)</td></tr>
<tr class="memdesc:ae9fd1de8d2addfe0a8ee3e42b3c33c13"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal receiving callback. <br /></td></tr>
<tr class="separator:ae9fd1de8d2addfe0a8ee3e42b3c33c13"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:a7f01585ce8b405b3956eb89564968b3d"><td class="memItemLeft" align="right" valign="top"><a id="a7f01585ce8b405b3956eb89564968b3d"></a>
const unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="master_8h.html#a7f01585ce8b405b3956eb89564968b3d">rate_intervals</a> [<a class="el" href="globals_8h.html#a00b477d166c2d09b9fea5d43c0c1cd48">EC_RATE_COUNT</a>]</td></tr>
<tr class="memdesc:a7f01585ce8b405b3956eb89564968b3d"><td class="mdescLeft">&#160;</td><td class="mdescRight">List of intervals for statistics [s]. <br /></td></tr>
<tr class="separator:a7f01585ce8b405b3956eb89564968b3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>EtherCAT master structure. </p>

<p class="definition">Definition in file <a class="el" href="master_8h_source.html">master.h</a>.</p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a id="a306a2bcfad973302ae507c9c6978b816"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a306a2bcfad973302ae507c9c6978b816">&#9670;&nbsp;</a></span>EC_MASTER_INFO</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define EC_MASTER_INFO</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">master, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">fmt, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">args...&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;printk(KERN_INFO &quot;EtherCAT %u: &quot; fmt, master-&gt;index, ##args)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Convenience macro for printing master-specific information to syslog. </p>
<p>This will print the message in <em>fmt</em> with a prefixed "EtherCAT &lt;INDEX&gt;: ", where INDEX is the master index.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>EtherCAT master </td></tr>
    <tr><td class="paramname">fmt</td><td>format string (like in printf()) </td></tr>
    <tr><td class="paramname">args</td><td>arguments (optional) </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8h_source.html#l00073">73</a> of file <a class="el" href="master_8h_source.html">master.h</a>.</p>

</div>
</div>
<a id="aece1fb7ea6af168ba7513c9d7b0a523a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aece1fb7ea6af168ba7513c9d7b0a523a">&#9670;&nbsp;</a></span>EC_MASTER_ERR</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define EC_MASTER_ERR</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">master, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">fmt, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">args...&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;printk(KERN_ERR &quot;EtherCAT ERROR %u: &quot; fmt, master-&gt;index, ##args)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Convenience macro for printing master-specific errors to syslog. </p>
<p>This will print the message in <em>fmt</em> with a prefixed "EtherCAT &lt;INDEX&gt;: ", where INDEX is the master index.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>EtherCAT master </td></tr>
    <tr><td class="paramname">fmt</td><td>format string (like in printf()) </td></tr>
    <tr><td class="paramname">args</td><td>arguments (optional) </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8h_source.html#l00085">85</a> of file <a class="el" href="master_8h_source.html">master.h</a>.</p>

</div>
</div>
<a id="af75617c47fe87f4f60e8593d7e79dbc0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af75617c47fe87f4f60e8593d7e79dbc0">&#9670;&nbsp;</a></span>EC_MASTER_WARN</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define EC_MASTER_WARN</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">master, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">fmt, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">args...&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td>&#160;&#160;&#160;printk(KERN_WARNING &quot;EtherCAT WARNING %u: &quot; fmt, master-&gt;index, ##args)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Convenience macro for printing master-specific warnings to syslog. </p>
<p>This will print the message in <em>fmt</em> with a prefixed "EtherCAT &lt;INDEX&gt;: ", where INDEX is the master index.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>EtherCAT master </td></tr>
    <tr><td class="paramname">fmt</td><td>format string (like in printf()) </td></tr>
    <tr><td class="paramname">args</td><td>arguments (optional) </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8h_source.html#l00097">97</a> of file <a class="el" href="master_8h_source.html">master.h</a>.</p>

</div>
</div>
<a id="a6cc0dea5aa374291f2379e844de741d0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6cc0dea5aa374291f2379e844de741d0">&#9670;&nbsp;</a></span>EC_MASTER_DBG</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define EC_MASTER_DBG</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">master, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">level, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">fmt, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">args...&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">do</span> { \</div><div class="line">        if (master-&gt;debug_level &gt;= level) { \</div><div class="line">            printk(KERN_DEBUG <span class="stringliteral">&quot;EtherCAT DEBUG %u: &quot;</span> fmt, \</div><div class="line">                    master-&gt;index, ##args); \</div><div class="line">        } \</div><div class="line">    } <span class="keywordflow">while</span> (0)</div></div><!-- fragment -->
<p>Convenience macro for printing master-specific debug messages to syslog. </p>
<p>This will print the message in <em>fmt</em> with a prefixed "EtherCAT &lt;INDEX&gt;: ", where INDEX is the master index.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>EtherCAT master </td></tr>
    <tr><td class="paramname">level</td><td>Debug level. Master's debug level must be &gt;= <em>level</em> for output. </td></tr>
    <tr><td class="paramname">fmt</td><td>format string (like in printf()) </td></tr>
    <tr><td class="paramname">args</td><td>arguments (optional) </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8h_source.html#l00111">111</a> of file <a class="el" href="master_8h_source.html">master.h</a>.</p>

</div>
</div>
<a id="a82682f338d4c64728c4bc14543eb6b9e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a82682f338d4c64728c4bc14543eb6b9e">&#9670;&nbsp;</a></span>EC_EXT_RING_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define EC_EXT_RING_SIZE&#160;&#160;&#160;32</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Size of the external datagram ring. </p>
<p>The external datagram ring is used for slave FSMs. </p>

<p class="definition">Definition at line <a class="el" href="master_8h_source.html#l00124">124</a> of file <a class="el" href="master_8h_source.html">master.h</a>.</p>

</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a id="aebcf0998049ecde580a47832fb3b36f0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aebcf0998049ecde580a47832fb3b36f0">&#9670;&nbsp;</a></span>ec_master_phase_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="master_8h.html#aebcf0998049ecde580a47832fb3b36f0">ec_master_phase_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>EtherCAT master phase. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aebcf0998049ecde580a47832fb3b36f0aa9cb1938a13b1bfc35b02646310efe8f"></a>EC_ORPHANED&#160;</td><td class="fielddoc"><p>Orphaned phase. </p>
<p>The master has no Ethernet device attached. </p>
</td></tr>
<tr><td class="fieldname"><a id="aebcf0998049ecde580a47832fb3b36f0a243c4f44013cdfedb1105cb13e6b1191"></a>EC_IDLE&#160;</td><td class="fielddoc"><p>Idle phase. </p>
<p>An Ethernet device is attached, but the master is not in use, yet. </p>
</td></tr>
<tr><td class="fieldname"><a id="aebcf0998049ecde580a47832fb3b36f0aadf62d83c5d61ea4fda76f5676aeb0c4"></a>EC_OPERATION&#160;</td><td class="fielddoc"><p>Operation phase. </p>
<p>The master was requested by a realtime application. </p>
</td></tr>
</table>

<p class="definition">Definition at line <a class="el" href="master_8h_source.html#l00130">130</a> of file <a class="el" href="master_8h_source.html">master.h</a>.</p>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="a7ac0da6ba7a9d07560cf444aa3591b9a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7ac0da6ba7a9d07560cf444aa3591b9a">&#9670;&nbsp;</a></span>ec_master_init()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_master_init </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *&#160;</td>
          <td class="paramname"><em>master</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>main_mac</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>backup_mac</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">dev_t&#160;</td>
          <td class="paramname"><em>device_number</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="module_8c.html#a9b6474dd18270738a5c4853fd93b5e70">class</a> *&#160;</td>
          <td class="paramname"><em>class</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>debug_level</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Master constructor. </p>
<dl class="section return"><dt>Returns</dt><dd>0 in case of success, else &lt; 0 </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>EtherCAT master </td></tr>
    <tr><td class="paramname">index</td><td>master index </td></tr>
    <tr><td class="paramname">main_mac</td><td>MAC address of main device </td></tr>
    <tr><td class="paramname">backup_mac</td><td>MAC address of backup device </td></tr>
    <tr><td class="paramname">device_number</td><td>Character device number. </td></tr>
    <tr><td class="paramname">class</td><td>Device class. </td></tr>
    <tr><td class="paramname">debug_level</td><td>Debug level (module parameter). </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8c_source.html#l00129">129</a> of file <a class="el" href="master_8c_source.html">master.c</a>.</p>

</div>
</div>
<a id="a510fd2e57ffec9153acd1fa5e07429d9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a510fd2e57ffec9153acd1fa5e07429d9">&#9670;&nbsp;</a></span>ec_master_enter_idle_phase()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_master_enter_idle_phase </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *&#160;</td>
          <td class="paramname"><em>master</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Transition function from ORPHANED to IDLE phase. </p>
<dl class="section return"><dt>Returns</dt><dd>Zero on success, otherwise a negative error code. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>EtherCAT master </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8c_source.html#l00620">620</a> of file <a class="el" href="master_8c_source.html">master.c</a>.</p>

</div>
</div>
<a id="a0265b8dfaa214b79b789eaf2808b836e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0265b8dfaa214b79b789eaf2808b836e">&#9670;&nbsp;</a></span>ec_master_enter_operation_phase()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_master_enter_operation_phase </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *&#160;</td>
          <td class="paramname"><em>master</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Transition function from IDLE to OPERATION phase. </p>
<dl class="section return"><dt>Returns</dt><dd>Zero on success, otherwise a negative error code. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>EtherCAT master </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8c_source.html#l00677">677</a> of file <a class="el" href="master_8c_source.html">master.c</a>.</p>

</div>
</div>
<a id="a0f9f566f43be617c60cc7be343582402"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0f9f566f43be617c60cc7be343582402">&#9670;&nbsp;</a></span>ec_master_receive_datagrams()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ec_master_receive_datagrams </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *&#160;</td>
          <td class="paramname"><em>master</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>frame_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Processes a received frame. </p>
<p>This function is called by the network driver for every received frame.</p>
<dl class="section return"><dt>Returns</dt><dd>0 in case of success, else &lt; 0 </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>EtherCAT master </td></tr>
    <tr><td class="paramname">frame_data</td><td>frame data </td></tr>
    <tr><td class="paramname">size</td><td>size of the received data </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8c_source.html#l01109">1109</a> of file <a class="el" href="master_8c_source.html">master.c</a>.</p>

</div>
</div>
<a id="aa2ad73c977ff2605e060085649d97d1a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa2ad73c977ff2605e060085649d97d1a">&#9670;&nbsp;</a></span>ec_master_find_slave()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a>* ec_master_find_slave </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *&#160;</td>
          <td class="paramname"><em>master</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>alias</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>position</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Finds a slave in the bus, given the alias and position. </p>
<dl class="section return"><dt>Returns</dt><dd>Search result, or NULL. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>EtherCAT master. </td></tr>
    <tr><td class="paramname">alias</td><td>Slave alias. </td></tr>
    <tr><td class="paramname">position</td><td>Slave position. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8c_source.html#l01791">1791</a> of file <a class="el" href="master_8c_source.html">master.c</a>.</p>

</div>
</div>
<a id="a7fd24724221dacd3f2a9059b8992cb0b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7fd24724221dacd3f2a9059b8992cb0b">&#9670;&nbsp;</a></span>ec_master_find_slave_const()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="globals_8h.html#a8d9ffff7dbe1babaa4786a63f2860d57">ec_slave_t</a>* ec_master_find_slave_const </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *&#160;</td>
          <td class="paramname"><em>master</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>alias</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>position</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Finds a slave in the bus, given the alias and position. </p>
<p>Const version.</p>
<dl class="section return"><dt>Returns</dt><dd>Search result, or NULL. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>EtherCAT master. </td></tr>
    <tr><td class="paramname">alias</td><td>Slave alias. </td></tr>
    <tr><td class="paramname">position</td><td>Slave position. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8c_source.html#l01807">1807</a> of file <a class="el" href="master_8c_source.html">master.c</a>.</p>

</div>
</div>
<a id="ab19fbec7369ba9928d822a025b1b62ef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab19fbec7369ba9928d822a025b1b62ef">&#9670;&nbsp;</a></span>ec_master_output_stats()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ec_master_output_stats </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *&#160;</td>
          <td class="paramname"><em>master</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Output master statistics. </p>
<p>This function outputs statistical data on demand, but not more often than necessary. The output happens at most once a second. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>EtherCAT master </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8c_source.html#l01235">1235</a> of file <a class="el" href="master_8c_source.html">master.c</a>.</p>

</div>
</div>
<a id="a2471b97da009904ca66188f0360d17e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2471b97da009904ca66188f0360d17e3">&#9670;&nbsp;</a></span>ec_master_config_count()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int ec_master_config_count </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *&#160;</td>
          <td class="paramname"><em>master</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the number of slave configurations provided by the application. </p>
<dl class="section return"><dt>Returns</dt><dd>Number of configurations. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>EtherCAT master. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8c_source.html#l01823">1823</a> of file <a class="el" href="master_8c_source.html">master.c</a>.</p>

</div>
</div>
<a id="a7f71af78e1b705fb6fadf9c5f1d574fb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7f71af78e1b705fb6fadf9c5f1d574fb">&#9670;&nbsp;</a></span>ec_master_get_config()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__ApplicationInterface.html#ga81f6717d9d4157df53b863e5ee3b04a4">ec_slave_config_t</a>* ec_master_get_config </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *&#160;</td>
          <td class="paramname"><em>master</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>pos</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get a slave configuration via its position in the list. </p>
<dl class="section return"><dt>Returns</dt><dd>Slave configuration or <em>NULL</em>. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>EtherCAT master. </td></tr>
    <tr><td class="paramname">pos</td><td>List position. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8c_source.html#l01856">1856</a> of file <a class="el" href="master_8c_source.html">master.c</a>.</p>

</div>
</div>
<a id="a260fc8f122ebaf627fd575e668efdfe5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a260fc8f122ebaf627fd575e668efdfe5">&#9670;&nbsp;</a></span>ec_master_get_config_const()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="group__ApplicationInterface.html#ga81f6717d9d4157df53b863e5ee3b04a4">ec_slave_config_t</a>* ec_master_get_config_const </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *&#160;</td>
          <td class="paramname"><em>master</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>pos</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get a slave configuration via its position in the list. </p>
<p>Const version.</p>
<dl class="section return"><dt>Returns</dt><dd>Slave configuration or <em>NULL</em>. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>EtherCAT master. </td></tr>
    <tr><td class="paramname">pos</td><td>List position. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8c_source.html#l01871">1871</a> of file <a class="el" href="master_8c_source.html">master.c</a>.</p>

</div>
</div>
<a id="a0ece9b88cc82a2b94ee1160561b0d6cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0ece9b88cc82a2b94ee1160561b0d6cf">&#9670;&nbsp;</a></span>ec_master_domain_count()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int ec_master_domain_count </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *&#160;</td>
          <td class="paramname"><em>master</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the number of domains. </p>
<dl class="section return"><dt>Returns</dt><dd>Number of domains. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>EtherCAT master. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8c_source.html#l01886">1886</a> of file <a class="el" href="master_8c_source.html">master.c</a>.</p>

</div>
</div>
<a id="a8c5d1278cdd711758cc70d006d4f6796"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8c5d1278cdd711758cc70d006d4f6796">&#9670;&nbsp;</a></span>ec_master_find_domain()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__ApplicationInterface.html#ga80023c0c77cb39ae1cd70c9d8e5269fc">ec_domain_t</a>* ec_master_find_domain </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *&#160;</td>
          <td class="paramname"><em>master</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>index</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get a domain via its position in the list. </p>
<dl class="section return"><dt>Returns</dt><dd>Domain pointer, or <em>NULL</em> if not found. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>EtherCAT master. </td></tr>
    <tr><td class="paramname">index</td><td>Domain index. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8c_source.html#l01920">1920</a> of file <a class="el" href="master_8c_source.html">master.c</a>.</p>

</div>
</div>
<a id="af3cf92c146791d65e9f50bab3fd52df9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af3cf92c146791d65e9f50bab3fd52df9">&#9670;&nbsp;</a></span>ec_master_find_domain_const()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="group__ApplicationInterface.html#ga80023c0c77cb39ae1cd70c9d8e5269fc">ec_domain_t</a>* ec_master_find_domain_const </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *&#160;</td>
          <td class="paramname"><em>master</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>index</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get a domain via its position in the list. </p>
<p>Const version.</p>
<dl class="section return"><dt>Returns</dt><dd>Domain pointer, or <em>NULL</em> if not found. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>EtherCAT master. </td></tr>
    <tr><td class="paramname">index</td><td>Domain index. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8c_source.html#l01935">1935</a> of file <a class="el" href="master_8c_source.html">master.c</a>.</p>

</div>
</div>
<a id="a46e4e479e848ee7d2b241b6bf59e53f7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a46e4e479e848ee7d2b241b6bf59e53f7">&#9670;&nbsp;</a></span>ec_master_eoe_handler_count()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint16_t ec_master_eoe_handler_count </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *&#160;</td>
          <td class="paramname"><em>master</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the number of EoE handlers. </p>
<dl class="section return"><dt>Returns</dt><dd>Number of EoE handlers. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>EtherCAT master. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8c_source.html#l01952">1952</a> of file <a class="el" href="master_8c_source.html">master.c</a>.</p>

</div>
</div>
<a id="ae20b715da9a11ca5743fd794a9cb1714"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae20b715da9a11ca5743fd794a9cb1714">&#9670;&nbsp;</a></span>ec_master_get_eoe_handler_const()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="ethernet_8h.html#a03b01351f25a9210938e676941427cf4">ec_eoe_t</a>* ec_master_get_eoe_handler_const </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *&#160;</td>
          <td class="paramname"><em>master</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>index</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get an EoE handler via its position in the list. </p>
<p>Const version.</p>
<dl class="section return"><dt>Returns</dt><dd>EoE handler pointer, or <em>NULL</em> if not found. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>EtherCAT master. </td></tr>
    <tr><td class="paramname">index</td><td>EoE handler index. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8c_source.html#l01974">1974</a> of file <a class="el" href="master_8c_source.html">master.c</a>.</p>

</div>
</div>
<a id="a329e1df698c675e5764eb52321cfb337"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a329e1df698c675e5764eb52321cfb337">&#9670;&nbsp;</a></span>ec_master_debug_level()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ec_master_debug_level </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *&#160;</td>
          <td class="paramname"><em>master</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>level</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the debug level. </p>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">0</td><td>Success. </td></tr>
    <tr><td class="paramname">-EINVAL</td><td>Invalid debug level. </td></tr>
  </table>
  </dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>EtherCAT master. </td></tr>
    <tr><td class="paramname">level</td><td>Debug level. May be 0, 1 or 2. </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8c_source.html#l01999">1999</a> of file <a class="el" href="master_8c_source.html">master.c</a>.</p>

</div>
</div>
<a id="af5944c23eda9f9fb63e3eb9772e6e1ba"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af5944c23eda9f9fb63e3eb9772e6e1ba">&#9670;&nbsp;</a></span>ecrt_master_create_domain_err()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__ApplicationInterface.html#ga80023c0c77cb39ae1cd70c9d8e5269fc">ec_domain_t</a>* ecrt_master_create_domain_err </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__ApplicationInterface.html#ga60ec31b46fcf7994c511359402c64baa">ec_master_t</a> *&#160;</td>
          <td class="paramname"><em>master</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Same as <a class="el" href="group__ApplicationInterface.html#gae4ede07f05b211667078ab2b2396da6e" title="Creates a new process data domain. ">ecrt_master_create_domain()</a>, but with ERR_PTR() return value. </p>
<dl class="section return"><dt>Returns</dt><dd>New domain, or ERR_PTR() return value. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">master</td><td>master </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="master_8c_source.html#l02217">2217</a> of file <a class="el" href="master_8c_source.html">master.c</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_c1346cf4828efdd0d2baf0d391d01b77.html">master</a></li><li class="navelem"><a class="el" href="master_8h.html">master.h</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
  </ul>
</div>
</body>
</html>
